1. Field of the Invention
The present invention is directed to providing a large amount of real time data to applications, and in particular, to providing a system which is both horizontally and vertically scalable to handle large amounts of data and provide such data to applications in real time.
2. Description of the Related Art
The Internet provides individuals with access to information on a scale heretofore unknown. The quantity of such information is also growing at an ever-increasing rate. One consequence of this information explosion is the need to maintain and scale data in a database that is accessible to large numbers of people, and which contains millions if not billions of items. Such large scale database systems with the ability to continue scaling with the exponential growth of the data which they must serve are generally proprietary in nature, developed to maintain, provide and scale based on the particular type of information they are designed to serve. For example, large database stores such as the World Wide Web searchable information guide Yahoo!® are built with proprietary technology. In such cases, the data is static for a period of time and designed to be read only, in order to provide fast access to users.
Historically, data was provided on mainframe systems such as those shown in FIG. 1. FIG. 1 shows a mainframe computer 100 coupled via a local area network 102 to a plurality of dumb terminals 104-108. Mainframe systems were the dominant data access and processing systems until the early 1990s. Typical mainframe systems supported approximately one thousand users via CRT monitors. All of the presentation, business logic and data storage generally occurred on one piece of hardware, often referred to as a central processing unit (CPU). Users operated a dumb terminal 104 (a CRT monitor and keyboard) that could only display data provided by the CPU or entered via the keyboard. Access to the CPU via the dumb terminals occurred through very localized LANs 102 and data transfer protocols. Application code for the CPU to execute was difficult to write or change, and implementation was limited.
FIG. 2 shows the next layer in data provision, that of client server systems. Client Server systems replaced Mainframe systems as the primary means for distributed data processing in the early 90's and remained dominant until around 1997. Thousands of users could be supported by operating a personal computer (PC) 202–206 in a first tier, tier 1, where business logic and presentation occurred. The PCs 202–206 accessed data application and server 210, 212 via a local or wide area network 220. Client Server systems are problematic since PCs were easily overloaded by software applications, and software application updates required individual downloading via diskette or from the web. Tier 2 consisted mainly of mainframes and high end UNIX machines.
The Internet forced users to move toward browser-based systems and away from client server systems as the primary means of distributed data storage and processing. The most common current browser based system is a three-tier architecture system shown in FIG. 3. This technology can support several thousands of users on multiple sites. In the first tier, individual appliances (PCs, Internet appliances, and the like) use browser based technology such as HTML, JSP etc. The second tier relates to the web server that delivers static pages to users on the internet and the application servers that actually process data (the business logic level). The third tier contains the database management system that stores the data that tier 2 requires (the backend).
This three-tier system provides a distributed processing model that allows updates to occur immediately and has more flexibility and scalability than client/server systems.
Some believe that the explosive growth of information is just beginning. Businesses, service providers and governments will need to manage tremendous amounts of information in an effective manner, and not all agencies will have the ability or the resources to command proprietary database structures to enable such database management. For organizations where such data is a key aspect of business growth, the implications are profound. While systems such as Networked Attached Storing (NAS) and Storage Area Networks (SANS) offer some performance and scalability, each as drawbacks. NAS based applications are bandwidth limited, so that when the database or network access pipe reaches some upper limit, data access becomes problematic. SANS generally lack the file sharing capabilities of NAS systems.
Businesses such as electronic retailers, web service providers with dynamic content and electronic retailing businesses will all feel the effects of these problems. A data intensive system which may be operated via the Internet is the system disclosed in: co-pending U.S. patent application Ser. No. 10/021,661 filed on Oct. 30, 2001, entitled “Intelligent Object Builder” and naming Thomas A. Wucherer, Cherisse M. Nicastro, Anthony A. Marnell II and Anthony A. Marnell III as inventors, the application being incorporated herein by reference in its entirety; co-pending U.S. patent application Ser. No. 10/015,903 filed on Oct. 30, 2001, entitled “Item Specification Object Management System” and naming Cherisse M. Nicastro, Thomas A. Wucherer, Todd Nisbet, Anthony A. Marnell II, and Anthony A. Marnell III as inventors, the application being incorporated herein by reference in its entirety; and co-pending U.S. patent application Ser. No. 10/016,615 filed on Oct. 30, 2001, entitled “Business Asset Management System Using Virtual Areas” and naming Cherisse M. Nicastro, Thomas A. Wucherer, Todd Nisbet, Anthony A. Marnell II, Anthony A. Marnell III, and Herman Spencer Jr. as inventors, the application being incorporated herein by reference in its entirety.
The foregoing applications disclose an Intelligent Business System for use, for example, in the design and build of a large or complicated building construction project. The system described therein presents a complete design—build—management solution to the tasks involved in overseeing and managing construction, manufacturing, and maintaining assets such as buildings, ships, airplanes and the like. In one aspect, the system is an enterprise system, Application Service Provider (ASP) platform, and open architecture system which provides application toolsets that allow: multiple participants to collaborate on projects; automation of bidding and estimating processes; accuracy and efficiency in purchasing; integration with existing applications; and simple but secure access over the Internet or a private network. The system captures and manages information throughout the design, build, and manage phases of the resulting asset.
All data is available in real-time providing consistent information throughout a project's lifecycle. Even after an asset has been built, an owner or property manager can access the system to derive specific information within a few seconds. This system can be applied to any number of design and build industries, including: Hospitality, Civil and Electrical Infrastructure; Telecom; Commercial, Residential, and Government Buildings; Manufacturing; Aerospace and Nautical applications; and Automobile, Railways, and Public Transportation projects.
The system provides this solution to users in real time, so that all information modified by users is instantly available to other users in the system, creating even greater efficiency.
The foregoing system tracks a multitude of data with respect to the project being managed. A brief summary of such data and its characteristics is set forth as follows:                Attribute: A quality of characteristic inherent in or ascribed to an item specification.        Business Object: An article used in the conducting of business, such as a schedule of items, a letter, an email, a purchase order, a request for quotation, and the like.        Classification: The system of the present invention recognizes classifications as a category or class of item types. The classification tree displays the classes in a hierarchal fashion.        Company: An organization or group that performs services or provides products within the system. A business enterprise; a firm. Individual company defaults and standards in the Intelligent Business System revolve around a company.        Component: The system supports components as a part of an Item Specification. A component is an existing Item Specification associated to another item specification; together, they make up a whole item or an assembly. An Item Specification can have multiple components.        Document Set: A special type of folder in the Collaboration tool. A document set allows a user to group together any number of files into a common set. The actual files are stored in separate folders organized in whatever manner suits the user. The contents of the document set folder are merely shortcuts, or pointers, to the actual files. Only one copy of any given file needs to be maintained.        Item Specification: The detail information about objects involved in building the parts and components of something. An example of an item would be a desk; an example of the item specification would be the description of the desk (height, width, depth, color, material, and so forth), its manufacturer(s), costs, delivery options, catalog numbers, and so forth.        Item Type: A template for creating item specifications for broad categories of items. For example: a user might have an item type of “office furniture,” this item type forms a template a user would use to create the many item specifications for various desks required.        Project: A plan or proposal; a scheme or undertaking requiring concerted effort. The system of the present invention allows any plan with more than one task to be considered as a project.        Project Partners: Project Partners can include suppliers, vendors, contractors, designers, and consultants who have different levels of access to specifications and receive information about, and respond to information on, the Property or Project.        Property: The base organizational point for the activities of a Company within the present system. The property is the largest hierarchal space in one or more virtual areas. The “Property” label may be customized using the Nomenclature options in Company Defaults.        Schedule: A schedule is a list of specified items, a reference number, a version number and the item status information. The system provides the ability to generate schedules, either by type or instance, for the entire project or specific virtual areas.        
Thus, for example, the system disclosed in co-pending U.S. patent application Ser. Nos. 10/021,661, 10/015,903, and 10/016,615 tracks every aspect and every instance of an item in a project being managed. For example, the system tracks not just every type of lightbulb used in a hotel construction, but every instance of a particular type of lightbulb used in the construction of the hotel.
In providing the foregoing Intelligent Business System, as with many large scale data problems, the solution provider would generally be required to go to a proprietary database system to provide a solution to tracking the sheer volume of data in multiple projects. However, it would be advantageous to provide a system whereby the system administrator of such a system could use “off-the-shelf” database technology and hardware in building a system that could manage the data used by such a system. Ideally, such a solution would be able to scale to theoretically infinite levels of data without loss of performance.